* Интерпретатор тестов * Программа КОНЦЕПТ, 21.09.2010, www.gendoc.ru * Инициация теста Инициализация_базы_фактов_теста присвоить BAL 0 ОШИБОЧНЫЕ_ВОПРОСЫ {} НОМЕР_ТЕСТА 3 печать "Протокол тестирования. Сегодня [$Сегодня]." '' факт взять номер_факта (факт сопоставитьСПервым $результат "r;t;[НОМЕР_ТЕСТА];[?];[?]" ) список сопоставить _ [номер_факта] "[?];[?];[?];[?КОЛИЧЕСТВО_ВОПРОСОВ];[?ОПИСАНИЕ_ТЕСТА]" Сообщение "Тест N [НОМЕР_ТЕСТА]. [ОПИСАНИЕ_ТЕСТА] [КОЛИЧЕСТВО_ВОПРОСОВ] вопросов." * Вопросы теста для ТЕКУЩИЙ_ВОПРОС (список сгенерить $результат 1 [КОЛИЧЕСТВО_ВОПРОСОВ] ) Задать_вопрос следующий * Определение результатов теста печать '' 'Результат теста:' Сообщение "Вы набрали [BAL] баллов." факт сопоставить n "r;r;[НОМЕР_ТЕСТА];BAL;[?];[?];[?]" для [n] факт взять номер_факта [$объектЦикла] список сопоставить _ [номер_факта] "r;r;[НОМЕР_ТЕСТА];BAL;[?min];[?max];[?результат]" если [BAL] >= [min] если [BAL] <= [max] Сообщение [результат] конец конец следующий если [ОШИБОЧНЫЕ_ВОПРОСЫ] список упорядочитьЧисла ОШИБОЧНЫЕ_ВОПРОСЫ [ОШИБОЧНЫЕ_ВОПРОСЫ] Сообщение "Вы сделали ошибки в следующих вопросах [ОШИБОЧНЫЕ_ВОПРОСЫ]." конец ****** ФУНКЦИИ ****** функция Сообщение текст показать сообщение [текст] >[текст] возврат функция Задать_вопрос факт сопоставитьМножество ВОПРОС "r;q;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[?Result]" если [ВОПРОС] иначе Сообщение "Вопрос [ТЕКУЩИЙ_ВОПРОС] не найден." конец список голова ВОПРОС [ВОПРОС] строка сцепить ВОПРОС "[ТЕКУЩИЙ_ВОПРОС]/[КОЛИЧЕСТВО_ВОПРОСОВ]) " [ВОПРОС] > >[ВОПРОС] факт сопоставитьМножество ВАРИАНТЫ_ОТВЕТОВ "r;v;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[?Result];[?]" для [ВАРИАНТЫ_ОТВЕТОВ] > [$номерИтерации]) [$объектЦикла] следующий если [ВАРИАНТЫ_ОТВЕТОВ] ввести меню1 ОТВЕТ [ВОПРОС] [ВАРИАНТЫ_ОТВЕТОВ] >Ваш ответ: [ОТВЕТ] факт сопоставить n "r;v;[НОМЕР_ТЕСТА];[ТЕКУЩИЙ_ВОПРОС];[ОТВЕТ];[?]" если [n] != {} для [n] факт взять f [$объектЦикла] список взять ФОРМУЛА [f] 6 если [ФОРМУЛА] список взять e1 [ФОРМУЛА] 1 список взять e2 [ФОРМУЛА] 2 строка сцепить ФОРМУЛА "вычислить + [e1] " '[' [e1] ']' " [e2]" выполнить [ФОРМУЛА] иначе множество или ОШИБОЧНЫЕ_ВОПРОСЫ [ОШИБОЧНЫЕ_ВОПРОСЫ] [ТЕКУЩИЙ_ВОПРОС] конец следующий конец иначе Сообщение "Для вопроса [ТЕКУЩИЙ_ВОПРОС] отсутствуют варианты ответов." конец возврат функция Инициализация_базы_фактов_теста *данные загрузить "[$текущийКаталог]Tests.txt" * Схемы фактов: *s;t;номер_теста;количество_вопросов;описание_теста *s;q;номер_теста;номер_вопроса;текст_вопроса *s;v;номер_теста;номер_вопроса;текст_варианта_ответа;переменная;число_баллов *s;r;номер_теста;переменная;нижняя_граница;верхняя_граница;текст факт добавить \ 'r;t;3;12;Общее знакомство с цветковыми растениями.' \ 'r;q;3;1;Биология - наука, изучающая:' \ 'r;v;3;1;живую и неживую природу;' \ 'r;v;3;1;живую природу;{BAL;1}' \ 'r;v;3;1;сезонные изменения в живой природе;' \ 'r;v;3;1;жизнь растений;' \ 'r;q;3;2;Строение растений изучает наука:' \ 'r;v;3;2;экология;' \ 'r;v;3;2;фенология;' \ 'r;v;3;2;ботаника;{BAL;1}' \ 'r;v;3;2;биология;' \ 'r;q;3;3;Цветковые растения относятся к:' \ 'r;v;3;3;царству грибов;' \ 'r;v;3;3;царству растений;{BAL;1}' \ 'r;v;3;3;доядерным живым организмам;' \ 'r;v;3;3;ядерным живым организмам;{BAL;1}' \ 'r;q;3;4;Организм растения состоит из органов:' \ 'r;v;3;4;корня и стебеля;' \ 'r;v;3;4;цветка и стебеля;' \ 'r;v;3;4;корня и побега;{BAL;1}' \ 'r;v;3;4;цветка и плодов;' \ 'r;q;3;5;Побегом называют:' \ 'r;v;3;5;часть стебеля;' \ 'r;v;3;5;почки и листья;' \ 'r;v;3;5;стебель с листьями и почками;{BAL;1}' \ 'r;v;3;5;цветок;' \ 'r;q;3;6;Цветок - это:' \ 'r;v;3;6;видоизмененный побег;{BAL;1}' \ 'r;v;3;6;яркий венчик;' \ 'r;v;3;6;околоцветник;' \ 'r;v;3;6;часть стебеля;' \ 'r;q;3;7;Главные части цветка:' \ 'r;v;3;7;лепестки и чашелистики;' \ 'r;v;3;7;пестик и тычинки;{BAL;1}' \ 'r;v;3;7;цветоножка и цветоложе;' \ 'r;v;3;7;столбик и рыльце;' \ 'r;q;3;8;Плод образуется из:' \ 'r;v;3;8;тычинки;' \ 'r;v;3;8;пестика;' \ 'r;v;3;8;завязи пестика;{BAL;1}' \ 'r;v;3;8;рыльца пестика;' \ 'r;q;3;9;Плодом нельзя назвать:' \ 'r;v;3;9;боб;' \ 'r;v;3;9;клубень картофеля;{BAL;1}' \ 'r;v;3;9;ягоду;' \ 'r;v;3;9;стручок;' \ 'r;q;3;10;Семя имеет:' \ 'r;v;3;10;только запас питательных веществ;' \ 'r;v;3;10;только зародыш;' \ 'r;v;3;10;зародыш с запасом питательных веществ;{BAL;1}' \ 'r;v;3;10;зародышевый корешок, стебелек и почечку с листочком;' \ 'r;q;3;11;Плоды и семена, имеющие пушистые волоски, распространяются:' \ 'r;v;3;11;водой;' \ 'r;v;3;11;животными;' \ 'r;v;3;11;ветром;{BAL;1}' \ 'r;v;3;11;саморазбрасыванием;' \ 'r;q;3;12;Травы отличаются от деревьев и кустарников тем, что имеют:' \ 'r;v;3;12;ствол и ветви;' \ 'r;v;3;12;несколько стволиков;' \ 'r;v;3;12;зеленые листья;' \ 'r;v;3;12;зеленые сочные стебли;{BAL;1}' \ 'r;r;3;BAL;0;8;ТЕСТ НЕ СДАН' \ 'r;r;3;BAL;9;12;ТЕСТ СДАН' возврат